## 11.12. Syntax of ex Commands

To enter an ex command from vi, type:

>     :[address]  command  [options]

An initial : indicates an ex command. As you type the command, it is echoed on the status line. Enter the command by pressing Return. address is the line number or range of lines that are the object of command. options and addresses are described in the following sections. ex commands are described in the alphabetical summary.

### 11.12.1. Options

!

  Indicates a variant command form, overriding the normal behavior.

count

  The number of times the command is to be repeated. Unlike vi commands, ex commands cannot be preceded by count, because a number preceding an ex command is treated as a line address. For example, d3 deletes 3 lines beginning with the current line; 3d deletes line 3.

file

  The name of a file that is affected by the command. %stands for current file; # stands for previous file.

### 11.12.2. Addresses

If no address is given, the current line is the object of the command. If the address specifies a range of lines, the format is:

>     x,y

where x and y are the first and last addressed lines (x must precede y in the buffer). x and y may be line numbers or symbols. Using ; instead of , sets the current line to x before interpreting y. The notation 1,$ addresses all lines in the file, as does %.

### 11.12.3. Address Symbols

Symbol | Meaning
--- | ---
`1,$` | All lines in the file
`%` | All lines; same as 1,$
``x`,`y | Lines x through y
``x`;`y | Lines x through y, with current line reset to x
`0` | Top of file
`.` | Current line
``n | Absolute line number n
`$` | Last line
``x`-`n | n lines before x
``x`+`n | n lines after x
`-`[n] | One or n lines previous
`+`[n] | One or n lines ahead
`'`x | Line marked with x
`''` | Previous mark
`/`pattern`/` | Forward to line matching pattern
`?`pattern`?` | Backward to line matching pattern

See Chapter 9, "Pattern Matching", for more information on using patterns.

Copyright © 2001 O'Reilly & Associates. All rights reserved.